Java EE Connector Architecture
   HOME

TheInfoList



OR:

Jakarta Connectors (JCA; formerly Java EE Connector Architecture and J2EE Connector Architecture) is a
Java programming language Java is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. It is a general-purpose programming language intended to let programmers ''write once, run anywh ...
tool for connecting application servers and enterprise information systems (EIS) as part of
enterprise application integration Enterprise application integration (EAI) is the use of software and computer systems' architectural principles to integrate a set of enterprise computer applications. Overview Enterprise application integration is an integration framework comp ...
(EAI). While
JDBC Java Database Connectivity (JDBC) is an application programming interface (API) for the programming language Java, which defines how a client may access a database. It is a Java-based data access technology used for Java database connectivity. I ...
is specifically used to connect Java applications to
database In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases s ...
s, JCA is a more generic architecture for connection to
legacy system In computing, a legacy system is an old method, technology, computer system, or application program, "of, relating to, or being a previous or outdated computer system", yet still in use. Often referencing a system as "legacy" means that it paved ...
s. JCA was developed under the
Java Community Process The Java Community Process (JCP), established in 1998, is a formalized mechanism that allows interested parties to develop standard technical specifications for Java technology. Anyone can become a JCP Member by filling a form available at thJCP w ...
as JSR 16 (JCA 1.0), JSR 112 (JCA 1.5) and JSR 322 (JCA 1.6).


JCA and Java EE

J2EE Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web serv ...
Version 1.3 requires application servers to support JCA Version 1.0. J2EE Version 1.4 requires application servers to support JCA Version 1.5.
Java EE Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web ser ...
Version 6 requires application servers to support JCA version 1.6.


Contracts

The Jakarta Connector Architecture defines a standard for connecting a compliant application server to an EIS. It defines a standard set of system-level contracts between the Jakarta EE application server and a resource adapter. The system contracts defined by Version 1.0 of the J2EE Connector Architecture are described by the specification as follows: ;Connection management: Connection management enables an application server to pool connections to the underlying EIS and enables application components to connect. This leads to a scalable application environment that can support a large number of clients. ;Transaction management: Transaction management enables an application server to use a transaction manager to manage transactions across multiple resource managers. This contract also supports transactions that are managed internal to an EIS resource manager without the necessity of involving an external transaction manager. ;Security management: Security management reduces security threats to the EIS and protects valuable information resources managed by the EIS. JCA Version 1.5 adds system contracts to the specification as follows: ;Life cycle management: Life cycle management enables an application server to manage the life cycle of a resource adapter from initiation through upgrades to obsolescence. This contract provides a mechanism for the application server to bootstrap a resource adapter instance during its deployment or application server startup, and to notify the resource adapter instance during its withdrawal or during an orderly shutdown. ;Work management: Work management enables a resource adapter to do work (monitor network endpoints, invoke application components, and so on) by submitting work instances to an application server for execution. The application server dispatches threads to execute submitted work instances. This allows a resource adapter to avoid creating or managing threads directly, and allows an application server to efficiently pool threads and have more control over its runtime environment. The resource adapter can control the transaction context with which work instances are executed. ;Transaction inflow management: Transaction inflow management enables a resource adapter to propagate an imported transaction to an application server. This contract also allows a resource adapter to transmit transaction completion and crash recovery calls initiated by an EIS, and ensures that the Atomicity, Consistency, Isolation and Durability ( ACID) properties of the imported transaction are preserved. ;Message inflow management: Message inflow management enables a resource adapter to asynchronously deliver messages to message endpoints residing in the application server, independent of the specific messaging style, messaging semantics and messaging infrastructure used to deliver messages. This contract also serves as the standard message provider pluggability contract that allows a wide range of message providers (
Java Message Service The Jakarta Messaging API (formerly Java Message Service or JMS API) is a Java application programming interface (API) for message-oriented middleware. It provides generic messaging models, able to handle the producer–consumer problem, that can ...
(JMS), Java API for XML Messaging (JAXM), and so on) to be plugged into any Java EE compatible application server with a resource adapter.


EIS Integration

JCA adapters can be built to integrate with various Enterprise Information System such as
Siebel Systems Siebel Systems, Inc. () was a software company principally engaged in the design, development, marketing, and support of customer relationship management (CRM) applications—notably Siebel CRM. The company was founded by Thomas Siebel and Pat ...
,
SAP AG Sap is a fluid transported in xylem cells (vessel elements or tracheids) or phloem sieve tube elements of a plant. These cells transport water and nutrients throughout the plant. Sap is distinct from latex, resin, or cell sap; it is ...
, Great Plains Systems, Oracle Applications, etc. Siebel provides
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how ...
to integrate with various platforms like
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mos ...
,
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
, .NET,
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to: * Visual Basic .NET (now simply referred to as "Visual Basic"), the current version of Visual Basic launched in 2002 which runs on .NET * Visual Basic ( ...
, etc. For Java it provides an interface called ' Java Data Bean' (JDB). The Siebel adapter provides data access via the JDB API. Great Plains Systems provides an interface called eConnect to integrate with other platforms. SAP provides an interface for Java called SAP Java Connector (SAP JCo).


External links

* * Th
J2EE Connector homepage
contains a lot of useful information, * so does IBM's article o
choosing among JCA, JMS and Web services

JSR 112
(JCA 1.5)
JSR 322: Java EE Connector Architecture 1.6
(JCA 1.6)
JSR 16
(JCA 1.0) * http://www.onjava.com/pub/a/onjava/2004/03/24/j2eeca.html {{DEFAULTSORT:Jakarta Connectors Java enterprise platform Java specification requests